It is recognized today that there are many advantages to recording audio information, such as music and human voices, in a fully digital fashion, as is done for example on audio compact discs (CDs). One of the biggest advantages is the elimination of noise that is inherent to the recording, mastering and playback of audio signals employing well-known analog techniques. Clearly, once the audio has been accurately encoded into numbers, there can be no corruption of the content by externally coupled noise. Despite these obvious advantages, however, analog audio recording is still widely used in certain industries, such as the film industry, in part because of their large investment in existing analog equipment. For example, there is an enormous installed base of analog playback equipment that would be incompatible with digitally formatted audio material. Moreover, there is a vast collection of existing subject matter which has already been recorded in an analog format and which therefore requires analog playback equipment.
When an analog audio signal is copied, edited, recorded on magnetic tape, read back from magnetic tape, or otherwise transmitted, significant noise is typically introduced in a cumulative manner at each such processing step. As a result, various noise reduction systems have been invented to lessen the impact of the noise on the quality of a recording as perceived by listeners. A typical noise reduction system transforms the captured analog audio waveform into an audio waveform having altered characteristics, for example, by boosting the waveform's amplitude in certain portions of the frequency spectrum. This transformation is referred to as "encoding." The encoded analog waveform is recorded, for example, on magnetic tape or otherwise transmitted.
As part of the playback process, the encoded waveform is subjected to a second transformation referred to as "decoding." That transformation is designed to reverse the original encoding transformation and restore the original waveform as closely as possible to its original spectral character. The overall process will achieve noise reduction if the decoding transformation is one which tends to reduce the amplitude of the kinds of noise which are typically encountered, such as low-level broadband noise. Reversing an encoding process which gains up signals at certain frequencies before noise is introduced will reduce the amplitudes of those components to their original values, while reducing any noise signals injected subsequent to the encoding process and having components at those frequencies by the same factor. A widely used noise reduction system is Dolby A, described in Ray M. Dolby, "An Audio Noise Reduction System," 15 J. Audio Eng. Soc. 383 (1967), the entirety of which is incorporated herein by this reference.
Because the motion picture industry continues to record, mix and play back its audio subject matter using analog techniques, audio noise reduction systems implemented in the film industry have heretofore been implemented exclusively through analog signal processing techniques (i.e. using circuits made up of resistors, capacitors, operational amplifiers and other analog electronic components). A number of significant disadvantages inhere to the analog implementation of noise reduction processes. For example, problems arise as a consequence of manufacturing-lot and temperature variations in the values of the resistors and capacitors used to implement the analog circuits, in the offset voltages and other parameters of operational amplifiers, etc. Moreover, environmental conditions can also cause drifts in such parameters. In a noise reduction system, such variations could result in a mismatch between the circuit which encodes and the circuit which decodes, leading to discernable differences between the original input waveform and the decoded waveform. Such analog implementations are also inflexible, requiring changes in components or component values to achieve upgrades, redesigns or to customize characteristics.
Digital signal processing equipment has been steadily declining in cost and increasing in capability over the past decades. Many signal processing tasks which were formerly carried out through analog circuits are now performed primarily through digital signal processing. Digital signal processing offers the possibility of circuits having lower cost, smaller size, and lower power consumption, particularly when a number of signal processing functions can share one digital signal processor. Digital signal processing makes available to the designer filters with transfer characteristics which would be difficult to realize economically with analog signal processing circuitry. Digital signal processing also avoids many of the problems which exist in analog signal processing circuits. For example, the manufacturing-lot and temperature variations referred to above are not a problem in digital signal processing; because the coefficient values that define a filter in DSP are stored as digital quantities, they do not vary from one manufacturing lot to another, nor do they vary with temperature. Moreover, DSP systems are extremely flexible in that they can be refined, redesigned or adjusted by simply loading new software with which to configure the DSP processor.
While techniques have become known in the art for designing digital signal processing systems which merely implement digitally preexisting analog signal processing systems, certain noise reduction systems of the type exemplified by Dolby A cannot be implemented simply by straight-forward conversion into an analogous digital signal processing system. Indeed, the common wisdom in the industry is that the decoding of known analog noise reduction schemes such as Dolby A cannot be successfully implemented digitally. The reason for this is the strategy which Dolby A and similar systems employ for decoding.
FIGS. 1a and 1b depict a high-level representation of the structure employed by Dolby A and similar systems to encode and decode audio signals respectively. The signal X 105 to be encoded passes through an encoding block 110, the output of which is added to the original signal by an adder 115, producing the encoded audio signal Y 120. During playback, an audio signal Y.sub.N 145 (which is the encoded signal Y 120 which has had noise introduced to it through the various analog recording, mixing and playback processes as previously discussed) is decoded to produce an audio signal X.sub.n which represents the original audio signal X 105, with any noise introduced through recording, mixing, etc. having been reduced. The decoding process operates by employing an encoding block 130, the transfer function of which is identical to that of the encoding block 110 used to encode the original signal X 105. The reconstructed (i.e. decoded) signal X.sub.n 135 is fed back to encoding block 130 to produce an encoded version of the reconstructed signal which is then subtracted from the encoded signal Y.sub.N by adder 125 to produce the reconstructed signal.
In effect, the decoder assumes what the reconstructed output X.sub.n should be and then uses it to produce a signal from encoding block 130 which is, with respect to all components of the signal X.sub.n except the noise, exactly what is added to the original signal X 105 during the encoding process. By subtracting this signal from the encoded signal Y.sub.N, the reconstructed signal X.sub.n is produced. The advantage of this scheme is that the two encoding blocks 110 and 130 can be identical, and if one ignores any noise which may have been introduced into the encoded signal 120 between encode and decode, then the decoded signal 135 is guaranteed to be identical to the encoded one.
This playback scheme essentially assumes that the decoded signal 135 is the original unencoded signal 105 and uses a sample of the decoded signal 135 at time t.sub.1 to calculate that signal 130 which must be subtracted from the encoded signal 145 at time t.sub.1 to produce the original output. Because the delay through the feedback loop is minimal using analog circuits, this system will not be unstable for frequencies over the audio range.
The structure of FIG. 1b is not suited for straightforward conversion to a digital signal processing implementation. A straightforward conversion of the decoder would replace the analog encoding block 130 with a digital signal processor having a closely similar transfer characteristic. While it is possible using techniques known in the art to program a digital signal processor to closely imitate the amplitude gain of analog encoding block 130 (see, for example, Alan V. Oppenheim & Ronald W. Schafer, Discrete-Time Signal Processing sec. 7.1 (1989)), any digital signal processing implementation of that encoding block would inevitably introduce a delay t.sub.D between the time t.sub.1 that a sample of the decoded signal 145 is available and the time t.sub.1 +t.sub.D that the value 140 generated from that sample by the encoding block 130 becomes available. Because of this delay, it is impossible to generate the decoded signal 135 by subtracting from the current sample of the input signal 145 the value generated by encoding block 130 from that sample; rather, the only feasible way to generate decoded signal 135 is to subtract from the current sample of the input signal 145 the value generated by encoding block 130 from the previous sample of input signal 145. This introduces a delay of at least one sample period into the feedback loop of the decoder of FIG. 1b.
In audio processing, samples are generally taken at a rate of 44.1 kHz, i.e. approximately every 23 .mu.s. As is well known, delays in feedback loops tend to make systems unstable. In the case at hand, it is found that the one-sample-period delay renders a straight conversion of the structure of FIG. 1b unstable for some frequencies over the audio range and therefore unusable. Thus, to produce the result of the decoding scheme of FIG. 1b digitally, a radically different approach must be invented to compensate for the digital delay. The scheme must be emulated rather than imitated.
In sum, a straightforward conversion of the analog circuitry is not possible, but because of the many cost and performance advantages that could be realized using DSP, there is a need in the art for a method of digitally decoding Dolby A-type and similar decoding systems; such an implementation must employ a different overall structure from that of existing analog decoders to emulate rather than imitate the analog process.